home *** CD-ROM | disk | FTP | other *** search
/ HPAVC / HPAVC CD-ROM.iso / PWALOG02.ZIP / LOG.PPE (.txt) < prev    next >
PCBoard Programming Language Executable  |  1995-04-09  |  11KB  |  720 lines

  1. ;------------------------------------------------------------------------------
  2. ;                                                   .ss.
  3. ;                                                   `²²'
  4. ;             .,sS$Ss,,s$  .,sS$$$Ss.  .,sS$Ss,,s$ .ss.  .sSs.
  5. ;           .d$$²^°²$$$$'.d$P²°^^²$P'.d$$²^°²$$$$'.$$$' .$$$²Sb,.
  6. ;           $$$'   .$$$' $$$²Sçsµ²' .$$$'   .$$$'.$$$' .$$$'  `$$b.
  7. ;           $$$b,,d$$$' ,$$$b,....,s$$$$b,,d$$$'.$$$;.,$$$'    ;$$$
  8. ;           `²S$$S²²S$$S²°²S$$$$S²°°²S$$$$$$',$$S²°²S$S'.sS$$$P²'
  9. ;                                    .sS²°$$$²²°"'       d²°'
  10. ;                                  .$$²  .$$'
  11. ;                                  $$$.,d$$'
  12. ;                                  `²S$$S²'
  13. ;------------------------------------------------------------------------------
  14. ; P.P.L.X. 2.OO                          (C)1996 - Lone Runner / AEGiS CoRP'96 
  15. ;------------------------------------------------------------------------------
  16. ; PPE 3.O1 (Encryption type I) - Analysis ON - Postprocessing ON
  17. ;------------------------------------------------------------------------------
  18.  
  19.     Boolean  BOOLEAN001
  20.     Boolean  BOOLEAN002
  21.     DWord    DWORD001
  22.     DWord    DWORD002
  23.     Date     DATE001
  24.     Date     DATE002
  25.     Date     DATE003
  26.     Date     DATE004
  27.     Integer  INTEGER009
  28.     Integer  INTEGER010
  29.     Integer  INTEGER011
  30.     Integer  INTEGER012
  31.     Integer  INTEGER013
  32.     Integer  INTEGER014
  33.     Integer  INTEGER015
  34.     Integer  INTEGER016
  35.     String   TSTRING001(23)
  36.     String   STRING002
  37.     String   STRING003
  38.     String   STRING004
  39.     String   TSTRING005(25)
  40.     String   STRING006
  41.     String   STRING007
  42.     String   STRING009
  43.     String   STRING010
  44.     String   STRING011
  45.     String   STRING012
  46.     String   STRING013
  47.     String   STRING014
  48.     String   TSTRING015(25)
  49.     String   STRING016
  50.     String   STRING020
  51.     Int      INT001
  52.     Int      INT002
  53.     Int      INT003
  54.     Int      INT004
  55.     Int      INT005
  56.     Int      INT006
  57.     Int      INT007
  58.     Int      INT008
  59.     Int      INT009
  60.     Int      INT010
  61.     Int      INT011
  62.     Int      INT012
  63.     Declare  Function FUNCTION002(String STRING017, Int INT013, String STRING018, String STRING019) String
  64.     Declare  Procedure PROC001()
  65.     Declare  Procedure PROC002()
  66.     Declare  Procedure PROC003(Var Integer INTEGER001, Var Integer INTEGER002, Integer INTEGER003)
  67.     Declare  Procedure PROC004(Var Integer INTEGER004, Integer INTEGER005)
  68.     Declare  Procedure PROC005(Var Integer INTEGER006, Integer INTEGER007)
  69.     Declare  Procedure PROC006(Integer INTEGER008, String STRING008)
  70.     Declare  Procedure PROC007()
  71.     Declare  Procedure PROC008(Var String STRING021, Var Date DATE005, Var Date DATE006)
  72.  
  73. ;------------------------------------------------------------------------------
  74.  
  75.     PROC001()
  76.     Shell 0, BOOLEAN001, PPEPath() + "getdate.exe", String(Date()) + " " + STRING002 + " " + PPEPath() + " + " + String(PcbNode())
  77.     PROC002()
  78.     End
  79.  
  80. ;------------------------------------------------------------------------------
  81.  
  82.     Procedure PROC001()
  83.  
  84.     STRING003 = "@X08├───────── @X09User @X08──────────── @X09Baud @X08──── @X09Start-End @X08─── @X09DL UL MS PG Node  Flags @X08─┤@X07"
  85.     INT001 = ReadLine(PPEPath() + "log.cfg", 1)
  86.     STRING004 = ReadLine(PPEPath() + "log.cfg", 2)
  87.     PrintLn "@X08[PWA] LogView 0.1 (C) @X07BlackCat"
  88.     Newline
  89.     While (1) Do
  90.         FreshLine
  91.         STRING006 = ""
  92.         INT002 = PcbNode()
  93.         InputStr "@X07Node log to view (enter aborts): _", STRING006, 7, 5, Mask_Num(), 0
  94.         FreshLine
  95.         If (STRING006 == "") End
  96.         INT002 = ToInteger(STRING006)
  97.         If (INT002 == PcbNode()) Then
  98.             If (INT002 == 0) Then
  99.                 STRING002 = STRING004
  100.                 Goto LABEL001
  101.             Endif
  102.             STRING002 = STRING004 + String(INT002)
  103.             :LABEL001
  104.             Break
  105.         Endif
  106.         If ((INT002 >= 1) && (INT002 <= INT001)) Then
  107.             STRING002 = STRING004 + String(INT002)
  108.             Break
  109.         Endif
  110.         PrintLn "@X0CInvalid log selected, try again please.."
  111.     EndWhile
  112.     FClose -1
  113.     Delete PPEPath() + "start" + String(PcbNode())
  114.  
  115.     EndProc
  116.  
  117.  
  118. ;------------------------------------------------------------------------------
  119.  
  120.     Procedure PROC003(Var Integer INTEGER001, Var Integer INTEGER002, Integer INTEGER003)
  121.  
  122.     String   STRING007
  123.     Boolean  BOOLEAN002
  124.     Int      INT006
  125.     Int      INT007
  126.     Int      INT008
  127.  
  128.     BOOLEAN002 = 0
  129.     FSeek 1, INTEGER001, 0
  130.     FDGet STRING007
  131.     If (STRING007 == "") Then
  132.         INTEGER001 = INTEGER003
  133.         FSeek 1, INTEGER003, 0
  134.     Else
  135.         FSeek 1, INTEGER001, 0
  136.         For INT006 = 1 To 18
  137.             FDGet TSTRING001(INT006)
  138.             If (TSTRING001(INT006) == "") Then
  139.                 INTEGER002 = INT006 - 1
  140.                 BOOLEAN002 = 1
  141.                 INT008 = Len(StripAtx(STRING007))
  142.                 For INT007 = INT006 To 18
  143.                     AnsiPos 3, 4 + INT007
  144.                     Print Space(INT008)
  145.                 Next
  146.                 Break
  147.             Endif
  148.             AnsiPos 3, 4 + INT006
  149.             Print "@X07", TSTRING001(INT006)
  150.         Next
  151.         If (!BOOLEAN002) INTEGER002 = 18
  152.     Endif
  153.  
  154.     EndProc
  155.  
  156.  
  157. ;------------------------------------------------------------------------------
  158.  
  159.     Procedure PROC004(Var Integer INTEGER004, Integer INTEGER005)
  160.  
  161.     AnsiPos 3, 4 + INTEGER004
  162.     Print "@X07", TSTRING001(INTEGER004)
  163.     If (INTEGER004 == INTEGER005) Then
  164.         INTEGER004 = 1
  165.     Else
  166.         Inc INTEGER004
  167.     Endif
  168.     AnsiPos 3, 4 + INTEGER004
  169.     Print "@X4F", TSTRING001(INTEGER004)
  170.  
  171.     EndProc
  172.  
  173.  
  174. ;------------------------------------------------------------------------------
  175.  
  176.     Procedure PROC005(Var Integer INTEGER006, Integer INTEGER007)
  177.  
  178.     AnsiPos 3, 4 + INTEGER006
  179.     Print "@X07", TSTRING001(INTEGER006)
  180.     If (INTEGER006 == 1) Then
  181.         INTEGER006 = INTEGER007
  182.     Else
  183.         Dec INTEGER006
  184.     Endif
  185.     AnsiPos 3, 4 + INTEGER006
  186.     Print "@X4F", TSTRING001(INTEGER006)
  187.  
  188.     EndProc
  189.  
  190.  
  191. ;------------------------------------------------------------------------------
  192.  
  193.     Procedure PROC006(Integer INTEGER008, String STRING008)
  194.  
  195.     String   STRING009
  196.     Integer  INTEGER009
  197.     Integer  INTEGER010
  198.  
  199.     FOpen 2, STRING008, 0, 0
  200.     FSeek 2, (INTEGER008 - 1) * 4, 0
  201.     FRead 2, INTEGER009, 4
  202.     FClose 2
  203.     StartDisp 2
  204.     FOpen 2, STRING002, 0, 0
  205.     FSeek 2, INTEGER009, 0
  206.     INTEGER010 = 1
  207.     While (1) Do
  208.         FGet 2, STRING009
  209.         If (Ferr(2)) Break
  210.         If ((Left(STRING009, 1) == "*") && (INTEGER010 <> 1)) Break
  211.         If (InStr(STRING009, "(U)")) Then
  212.             PrintLn "@X0F", STRING009
  213.         ElseIf (InStr(STRING009, "Error")) Then
  214.             PrintLn "@X0C", STRING009
  215.         ElseIf (InStr(STRING009, "Expired")) Then
  216.             PrintLn "@X0C", STRING009
  217.         ElseIf (InStr(STRING009, "Exceeded")) Then
  218.             PrintLn "@X0C", STRING009
  219.         ElseIf (InStr(STRING009, "Directory Scan")) Then
  220.             PrintLn "@X04", STRING009
  221.         ElseIf (InStr(STRING009, "Message Left")) Then
  222.             PrintLn "@X0D", STRING009
  223.         Else
  224.             PrintLn "@X07", STRING009
  225.         Endif
  226.         If (Abort()) Break
  227.         Inc INTEGER010
  228.     EndWhile
  229.     If (Abort()) ResetDisp
  230.     FClose 2
  231.     Wait
  232.     StartDisp 1
  233.  
  234.     EndProc
  235.  
  236.  
  237. ;------------------------------------------------------------------------------
  238.  
  239.     Procedure PROC002()
  240.  
  241.     String   STRING010
  242.     String   STRING011
  243.     String   STRING012
  244.     String   STRING013
  245.     String   STRING014
  246.     Date     DATE001
  247.     Integer  INTEGER011
  248.     Integer  INTEGER012
  249.     Integer  INTEGER013
  250.     Integer  INTEGER014
  251.     Integer  INTEGER015
  252.     Integer  INTEGER016
  253.     Int      INT009
  254.     DWord    DWORD001
  255.     DWord    DWORD002
  256.     Date     DATE002
  257.     Date     DATE003
  258.  
  259.     STRING010 = PPEPath() + "data" + String(PcbNode())
  260.     STRING013 = PPEPath() + "pos" + String(PcbNode())
  261.     DATE001 = Date()
  262.     StartDisp 1
  263.     DispFile PPEPath() + "menu", 0
  264.     AnsiPos 1, 4
  265.     Print STRING003
  266.     AnsiPos 60, 1
  267.     Print "@X08[ @X09", String(Date()), " @X08]"
  268.     FOpen 1, STRING010, 0, 0
  269.     FDefIn 1
  270.     FDGet STRING011
  271.     INTEGER012 = Len(STRING011) + 2
  272.     INT009 = INTEGER012
  273.     FSeek 1, 0, 0
  274.     INTEGER011 = 0
  275.     INTEGER015 = 0
  276.     INTEGER016 = 1
  277.     INTEGER013 = 1
  278.     While (1) Do
  279.         INTEGER013 = 1
  280.         PROC003(INTEGER011, INTEGER014, INTEGER015)
  281.         If (INTEGER011 > INTEGER015) INTEGER016 = INTEGER016 + 18
  282.         AnsiPos 3, 4 + INTEGER013
  283.         Print "@X4F", TSTRING001(INTEGER013)
  284.         While (1) Do
  285.             STRING012 = Upper(Inkey())
  286.             If (STRING012 == Chr(9)) Then
  287.                 PROC007()
  288.                 Continue
  289.             Endif
  290.             If ((STRING012 == "V") || (STRING012 == Chr(13))) Then
  291.                 AnsiPos 1, 23
  292.                 SaveScrn
  293.                 DefColor
  294.                 Cls
  295.                 DWORD001 = INTEGER016 + INTEGER013 - 1
  296.                 PROC006(DWORD001, STRING013)
  297.                 RestScrn
  298.                 KbdStuff ">"
  299.                 Continue
  300.             Endif
  301.             If ((STRING012 == "PGUP") || (STRING012 == "[")) Then
  302.                 If (INTEGER011 > 0) Then
  303.                     INTEGER015 = INTEGER011
  304.                     INTEGER011 = INTEGER011 - 18 * INTEGER012
  305.                     INTEGER016 = INTEGER016 - 18
  306.                     Break
  307.                 Endif
  308.                 Continue
  309.             Endif
  310.             If ((STRING012 == "PGDN") || (STRING012 == "]")) Then
  311.                 INTEGER015 = INTEGER011
  312.                 INTEGER011 = INTEGER011 + INTEGER014 * INTEGER012
  313.                 AnsiPos 3, 4 + INTEGER013
  314.                 Print "@X07", TSTRING001(INTEGER013)
  315.                 Break
  316.                 Continue
  317.             Endif
  318.             If ((STRING012 == "DOWN") || (STRING012 == ">")) Then
  319.                 PROC004(INTEGER013, INTEGER014)
  320.                 Continue
  321.             Endif
  322.             If ((STRING012 == "UP") || (STRING012 == "<")) Then
  323.                 PROC005(INTEGER013, INTEGER014)
  324.                 Continue
  325.             Endif
  326.             If ((STRING012 == Chr(27)) || (STRING012 == "Q")) Then
  327.                 DefColor
  328.                 Cls
  329.                 PrintLn "@X07BlackCat LogView 1.0"
  330.                 End
  331.                 Continue
  332.             Endif
  333.             If (((STRING012 == "-") || (STRING012 == Chr(18))) || (STRING012 == "LEFT")) Then
  334.                 If (STRING012 <> Chr(18)) Dec DATE001
  335.                 FOpen 2, STRING013, 0, 0
  336.                 FRead 2, DWORD002, 4
  337.                 FClose 2
  338.                 FCreate 2, PPEPath() + "start" + String(PcbNode()), 1, 0
  339.                 FPutLn 2, String(DWORD002)
  340.                 FClose 2
  341.                 Shell 0, BOOLEAN001, PPEPath() + "getdate.exe", String(DATE001) + " " + STRING002 + " " + PPEPath() + " + " + String(PcbNode())
  342.                 DefColor
  343.                 Cls
  344.                 DispFile PPEPath() + "menu", 0
  345.                 AnsiPos 1, 4
  346.                 Print STRING003
  347.                 AnsiPos 60, 1
  348.                 Print "@X08[ @X09", String(DATE001), " @X08]"
  349.                 FClose 1
  350.                 FOpen 1, STRING010, 0, 0
  351.                 FDefIn 1
  352.                 INTEGER015 = 0
  353.                 INTEGER011 = 0
  354.                 INTEGER016 = 1
  355.                 INTEGER012 = INT009
  356.                 Break
  357.                 Continue
  358.             Endif
  359.             If (((STRING012 == "+") || (STRING012 == "=")) || (STRING012 == "RIGHT")) Then
  360.                 If (DATE001 == Date()) Continue
  361.                 Delete PPEPath() + "start" + String(PcbNode())
  362.                 Inc DATE001
  363.                 FOpen 2, STRING013, 0, 0
  364.                 FSeek 2, -4, 2
  365.                 FRead 2, DWORD002, 4
  366.                 FClose 2
  367.                 FCreate 2, PPEPath() + "start" + String(PcbNode()), 1, 0
  368.                 FPutLn 2, String(DWORD002)
  369.                 FClose 2
  370.                 Shell 0, BOOLEAN001, PPEPath() + "getdate.exe", String(DATE001) + " " + STRING002 + " " + PPEPath() + " + " + String(PcbNode())
  371.                 DefColor
  372.                 Cls
  373.                 DispFile PPEPath() + "menu", 0
  374.                 AnsiPos 1, 4
  375.                 Print STRING003
  376.                 AnsiPos 60, 1
  377.                 Print "@X08[ @X09", String(DATE001), " @X08]"
  378.                 FClose 1
  379.                 FOpen 1, STRING010, 0, 0
  380.                 FDefIn 1
  381.                 INTEGER015 = 0
  382.                 INTEGER011 = 0
  383.                 INTEGER016 = 1
  384.                 INTEGER012 = INT009
  385.                 Break
  386.                 Continue
  387.             Endif
  388.             If (STRING012 == Chr(4)) Then
  389.                 FOpen 2, STRING013, 0, 0
  390.                 FRead 2, DWORD002, 4
  391.                 FClose 2
  392.                 FCreate 2, PPEPath() + "start" + String(PcbNode()), 1, 0
  393.                 FPutLn 2, String(DWORD002)
  394.                 FClose 2
  395.                 Shell 0, BOOLEAN001, PPEPath() + "getdate.exe", String(DATE001) + " " + STRING002 + " " + PPEPath() + " D " + String(PcbNode())
  396.                 DefColor
  397.                 Cls
  398.                 DispFile PPEPath() + "menu", 0
  399.                 AnsiPos 60, 1
  400.                 Print "@X08[ @X09", String(DATE001), " @X08]"
  401.                 FClose 1
  402.                 FOpen 1, STRING010, 0, 0
  403.                 FDefIn 1
  404.                 INTEGER015 = 0
  405.                 INTEGER011 = 0
  406.                 INTEGER016 = 1
  407.                 INTEGER012 = Len(ReadLine(STRING010, 1)) + 2
  408.                 Break
  409.                 Continue
  410.             Endif
  411.             If (STRING012 == Chr(21)) Then
  412.                 FOpen 2, STRING013, 0, 0
  413.                 FRead 2, DWORD002, 4
  414.                 FClose 2
  415.                 FCreate 2, PPEPath() + "start" + String(PcbNode()), 1, 0
  416.                 FPutLn 2, String(DWORD002)
  417.                 FClose 2
  418.                 Shell 0, BOOLEAN001, PPEPath() + "getdate.exe", String(DATE001) + " " + STRING002 + " " + PPEPath() + " U " + String(PcbNode())
  419.                 DefColor
  420.                 Cls
  421.                 DispFile PPEPath() + "menu", 0
  422.                 AnsiPos 60, 1
  423.                 Print "@X08[ @X09", String(DATE001), " @X08]"
  424.                 FClose 1
  425.                 FOpen 1, STRING010, 0, 0
  426.                 FDefIn 1
  427.                 INTEGER015 = 0
  428.                 INTEGER011 = 0
  429.                 INTEGER016 = 1
  430.                 INTEGER012 = Len(ReadLine(STRING010, 1)) + 2
  431.                 Break
  432.                 Continue
  433.             Endif
  434.             If (STRING012 == Chr(14)) Then
  435.                 Delete PPEPath() + "start" + String(PcbNode())
  436.                 DATE001 = FUNCTION002("@X07Date ", 8, 7, "")
  437.                 If (DATE001 == "") Continue
  438.                 Shell 0, BOOLEAN001, PPEPath() + "getdate.exe", String(DATE001) + " " + STRING002 + " " + PPEPath() + " + " + String(PcbNode())
  439.                 DefColor
  440.                 Cls
  441.                 DispFile PPEPath() + "menu", 0
  442.                 AnsiPos 1, 4
  443.                 Print STRING003
  444.                 AnsiPos 60, 1
  445.                 Print "@X08[ @X09", String(DATE001), " @X08]"
  446.                 FClose 1
  447.                 FOpen 1, STRING010, 0, 0
  448.                 FDefIn 1
  449.                 INTEGER015 = 0
  450.                 INTEGER011 = 0
  451.                 INTEGER016 = 1
  452.                 INTEGER012 = INT009
  453.                 Break
  454.                 Continue
  455.             Endif
  456.             If (STRING012 == Chr(6)) Then
  457.                 DATE002 = DATE001
  458.                 DATE003 = Date()
  459.                 PROC008(STRING014, DATE002, DATE003)
  460.                 If (STRING014 == "") Continue
  461.                 FCreate 2, PPEPath() + "search" + String(PcbNode()), 1, 0
  462.                 FPutLn 2, STRING014
  463.                 FClose 2
  464.                 FOpen 2, STRING013, 0, 0
  465.                 FRead 2, DWORD002, 4
  466.                 FClose 2
  467.                 FCreate 2, +String(PcbNode()), 1, 0
  468.                 FPutLn 2, String(DWORD002)
  469.                 FClose 2
  470.                 Shell 0, BOOLEAN001, PPEPath() + "getdate.exe", String(DATE002) + " " + STRING002 + " " + PPEPath() + " S " + String(PcbNode()) + " " + String(DATE003)
  471.                 DefColor
  472.                 Cls
  473.                 DispFile PPEPath() + "menu", 0
  474.                 AnsiPos 60, 1
  475.                 Print "@X08[ @X09", String(DATE001), " @X08]"
  476.                 FClose 1
  477.                 FOpen 1, STRING010, 0, 0
  478.                 FDefIn 1
  479.                 INTEGER015 = 0
  480.                 INTEGER011 = 0
  481.                 INTEGER016 = 1
  482.                 INTEGER012 = Len(ReadLine(STRING010, 1)) + 2
  483.                 Break
  484.             Endif
  485.         EndWhile
  486.     EndWhile
  487.  
  488.     EndProc
  489.  
  490.  
  491. ;------------------------------------------------------------------------------
  492.  
  493.     Procedure PROC007()
  494.  
  495.     Int      INT010
  496.     Int      INT011
  497.     Int      INT012
  498.     String   TSTRING015(25)
  499.  
  500.     INT011 = GetX()
  501.     INT012 = GetY()
  502.     For INT010 = 1 To 10
  503.         TSTRING015(INT010) = ScrText(1, INT010 + 4, 80, 1)
  504.     Next
  505.     AnsiPos 1, 5
  506.     Print "@X4F"
  507.     Print "                                         HELP                                   "
  508.     Print "▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀"
  509.     Print " [TAB   ] = Help                         [CTRL-D] View Downloads                "
  510.     Print " [ESC   ] = Quit LogView                 [CTRL-U] View Uploads                  "
  511.     Print " [-     ] = Previous day                 [CTRL-R] Reread current date           "
  512.     Print " [+/=   ] = Next day                     [CTRL-F] Find string                   "
  513.     Print " [ENTER ] = View current entry                                                  "
  514.     Print " [CTRL-N] = New Date (Manual)                                                   "
  515.     Print "▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀"
  516.     Print "                            PRESS [ESC] TO CONTINUE                             "
  517.     While (Inkey() <> Chr(27)) Do
  518.     EndWhile
  519.     For INT010 = 1 To 10
  520.         AnsiPos 1, INT010 + 4
  521.         Print TSTRING015(INT010)
  522.     Next
  523.     AnsiPos INT011, INT012
  524.     Return
  525.  
  526.     EndProc
  527.  
  528.     STRING006 = ""
  529.     INT004 = GetX()
  530.     INT005 = GetY()
  531.     For INT003 = 1 To 3
  532.         TSTRING005(INT003) = ScrText(1, INT003 + 11, 80, 1)
  533.     Next
  534.     AnsiPos 1, 12
  535.     Print "@X1F"
  536.     Print "@X1F ┌─────────────────────────────────────────────────────────────────────────────┐"
  537.     Print "@X1F │@X07                                                                             @X1F│"
  538.     Print "@X1F └─────────────────────────────────────────────────────────────────────────────┘"
  539.     AnsiPos 3, 13
  540.     InputStr "" + "_", STRING006, 7, 0, "", 0
  541.     For INT003 = 1 To 3
  542.         AnsiPos 1, INT003 + 11
  543.         Print TSTRING005(INT003)
  544.     Next
  545.     AnsiPos INT004, INT005
  546.     STRING016 = STRING006
  547.  
  548.     EndFunc
  549.  
  550.  
  551. ;------------------------------------------------------------------------------
  552.  
  553.     Function FUNCTION002(String STRING017, Int INT013, String STRING018, String STRING019) String
  554.  
  555.     Date     DATE004
  556.     String   STRING021
  557.  
  558.     STRING006 = ""
  559.     INT004 = GetX()
  560.     INT005 = GetY()
  561.     For INT003 = 1 To 3
  562.         TSTRING005(INT003) = ScrText(1, INT003 + 11, 80, 1)
  563.     Next
  564.     AnsiPos 1, 12
  565.     Print "@X1F"
  566.     Print "@X1F ┌─────────────────────────────────────────────────────────────────────────────┐"
  567.     Print "@X1F │@X07                                                                             @X1F│"
  568.     Print "@X1F └─────────────────────────────────────────────────────────────────────────────┘"
  569.     AnsiPos 3, 13
  570.     DATE004 = Date()
  571.     InputDate STRING017, DATE004, 7
  572.     STRING006 = String(DATE004)
  573.     For INT003 = 1 To 3
  574.         AnsiPos 1, INT003 + 11
  575.         Print TSTRING005(INT003)
  576.     Next
  577.     AnsiPos INT004, INT005
  578.     FUNCTION002 = ToDate(STRING006)
  579.  
  580.     EndFunc
  581.  
  582.  
  583. ;------------------------------------------------------------------------------
  584.  
  585.     Procedure PROC008(Var String STRING021, Var Date DATE005, Var Date DATE006)
  586.  
  587.     STRING006 = ""
  588.     INT004 = GetX()
  589.     INT005 = GetY()
  590.     For INT003 = 1 To 5
  591.         TSTRING005(INT003) = ScrText(1, INT003 + 11, 80, 1)
  592.     Next
  593.     AnsiPos 1, 12
  594.     Print "@X1F"
  595.     Print "@X1F ┌─────────────────────────────────────────────────────────────────────────────┐"
  596.     Print "@X1F │@X07                                                                             @X1F│"
  597.     Print "@X1F │@X07                                                                             @X1F│"
  598.     Print "@X1F │@X07                                                                             @X1F│"
  599.     Print "@X1F └─────────────────────────────────────────────────────────────────────────────┘"
  600.     AnsiPos 3, 13
  601.     InputStr "Search string: ", STRING021, 7, 60, Mask_Pwd(), 0
  602.     AnsiPos 3, 14
  603.     InputDate "   Start date: ", DATE005, 7
  604.     AnsiPos 3, 15
  605.     InputDate "     End date: ", DATE006, 7
  606.     For INT003 = 1 To 5
  607.         AnsiPos 1, INT003 + 11
  608.         Print TSTRING005(INT003)
  609.     Next
  610.     AnsiPos INT004, INT005
  611.  
  612.     EndProc
  613.  
  614.  
  615. ;------------------------------------------------------------------------------
  616. ;
  617. ; Usage report (before postprocessing)
  618. ;
  619. ; ■ Statements used :
  620. ;
  621. ;    3       End
  622. ;    8       Cls
  623. ;    1       Wait
  624. ;    96      Goto 
  625. ;    102     Let 
  626. ;    48      Print 
  627. ;    10      PrintLn 
  628. ;    53      If 
  629. ;    7       DispFile 
  630. ;    6       FCreate 
  631. ;    14      FOpen 
  632. ;    20      FClose 
  633. ;    1       FGet 
  634. ;    6       FPutLn 
  635. ;    1       ResetDisp
  636. ;    3       StartDisp 
  637. ;    8       DefColor
  638. ;    3       Delete 
  639. ;    3       InputStr 
  640. ;    3       InputDate 
  641. ;    1       Return
  642. ;    3       Inc 
  643. ;    2       Dec 
  644. ;    1       Newline
  645. ;    7       Shell 
  646. ;    1       KbdStuff 
  647. ;    37      AnsiPos 
  648. ;    2       FreshLine
  649. ;    1       SaveScrn
  650. ;    1       RestScrn
  651. ;    7       FSeek 
  652. ;    6       FRead 
  653. ;    7       FDefIn 
  654. ;    3       FDGet 
  655. ;    8       EndProc
  656. ;    2       EndFunc
  657. ;
  658. ;
  659. ; ■ Functions used :
  660. ;
  661. ;    1       +
  662. ;    2       -
  663. ;    3       *
  664. ;    116     +
  665. ;    5       -
  666. ;    34      ==
  667. ;    3       <>
  668. ;    10      <
  669. ;    11      <=
  670. ;    2       >
  671. ;    21      >=
  672. ;    43      !
  673. ;    22      &&
  674. ;    20      ||
  675. ;    5       Len(
  676. ;    1       Upper()
  677. ;    1       Left()
  678. ;    1       Space()
  679. ;    1       Ferr()
  680. ;    10      Chr()
  681. ;    6       InStr()
  682. ;    2       Abort()
  683. ;    6       Date()
  684. ;    1       StripAtx()
  685. ;    2       Inkey()
  686. ;    41      String()
  687. ;    1       Mask_Pwd()
  688. ;    1       Mask_Num()
  689. ;    33      PPEPath()
  690. ;    20      PcbNode()
  691. ;    5       ReadLine()
  692. ;    4       GetX()
  693. ;    4       GetY()
  694. ;    4       ScrText()
  695. ;    1       ToDate()
  696. ;    1       ToInteger()
  697. ;
  698. ;------------------------------------------------------------------------------
  699. ;
  700. ; Analysis flags : S
  701. ;
  702. ; S - Shell to DOS ■ 5
  703. ;     This may be normal if the PPE need to execute an external command,
  704. ;     but may be actually anything... nasty (formating HD, rebooting,...)
  705. ;     or usefull (sorting, maintenance,...). Check!
  706. ;     ■ Search for : SHELL
  707. ;
  708. ;------------------------------------------------------------------------------
  709. ;
  710. ; Postprocessing report
  711. ;
  712. ;    10      For/Next
  713. ;    5       While/EndWhile
  714. ;    27      If/Then or If/Then/Else
  715. ;    0       Select Case
  716. ;
  717. ;------------------------------------------------------------------------------
  718. ;                 AEGiS Corp - Break the routines, code against the machines!
  719. ;------------------------------------------------------------------------------
  720.